﻿package extend.language
{
    import com.gengine.debug.*;
    import com.gengine.utils.*;
    import com.mui.serialization.json.*;
    import flash.events.*;
    import flash.net.*;
    import mortal.common.global.*;

    public class PreLanguage extends Object
    {
        private static var map:Object = new Object();

        public function PreLanguage()
        {
            return;
        }// end function

        public static function init(param1:Function) : void
        {
            var path:String;
            var urlReq:URLRequest;
            var loader:URLLoader;
            var onLoaded:* = param1;
            if (!ParamsConst.instance.proxyType)
            {
                preLangByCode();
                onLoaded.call();
            }
            else
            {
                var onLoaderComplete:* = function (event:Event) : void
            {
                map = JSON.deserialize((event.target as URLLoader).data as String);
                onLoaded.call();
                return;
            }// end function
            ;
                var onLoaderError:* = function (event:IOErrorEvent) : void
            {
                Log.system(path + " 加载失败！");
                return;
            }// end function
            ;
                path = PathConst.mainPath + "assets/config/preLanguage.json" + "?v=" + ParamsConst.instance.flashVersion;
                urlReq = new URLRequest(path);
                loader = new URLLoader();
                loader.dataFormat = URLLoaderDataFormat.TEXT;
                loader.addEventListener(Event.COMPLETE, onLoaderComplete);
                loader.addEventListener(IOErrorEvent.IO_ERROR, onLoaderError);
                loader.load(urlReq);
            }
            return;
        }// end function

        private static function preLangByCode() : void
        {
            map = {101:"正在进入游戏... ", 102:"正在登录验证服务器", 103:"正在加载创号页面", 104:"正在加载主程序", 105:"加载配置文件", 106:"正在加载游戏素材", 107:"总进度：", 108:"当前进度：", 109:"<a href=\"event:\"><u>若加载不成功，请点此刷新</u></a></font>", 110:"<font color=\'#ff0000\'>此游戏：适用于18岁以上用户</font>", 111:"小提示：", 112:"用时：", 113:"秒", 114:"提示：\n1、主角色只能设置一次，<font color=\'#FFFF00\'>永久生效</font>。\n2、设置为主角色后，充值将会<font color=\'#FFFF00\'>自动充入该角色</font>中。\n3、未设置主角色前，<font color=\'#FFFF00\'>不能进入游戏</font>，并且<font color=\'#FFFF00\'>无法充值</font>到角色上。\n\n是否将该角色设置为主角色并进入游戏？", 115:"提 示", 116:"未知异常", 117:"内存不足", 118:"基础库异常", 119:"标准库异常", 120:"日期格式异常", 121:"基本函数异常", 122:"空句柄异常", 123:"数据库异常", 124:"序列化异常", 125:"语言包异常", 126:"XML异常", 127:"RMI基础错误", 128:"RMI框架不支持此操作", 129:"RMI框架不支持这种调用", 130:"网络连接超时", 131:"服务器连接失败", 132:"服务器连接断开", 133:"网络数据IO错误", 134:"服务对象不存在", 135:"服务方法不存在", 136:"服务没有实例化", 137:"玩家ID错误", 138:"账号已存在", 139:"角色名已经存在", 140:"登陆超时,请刷新重试", 141:"账号没有角色", 142:"角色名太长", 143:"角色名错误", 144:"创建角色数据不正确", 145:"错误的账号", 146:"您还没有登陆，请刷新重试", 147:"已经登陆服务器", 148:"您的操作太快了", 149:"版本号不一致", 150:"正在加载主角模型", 151:"准备登入游戏", 152:"正在创建3D资源", 153:"抵制不良游戏 拒绝盗版游戏 注意自我保护 谨防受骗上当  适度游戏益脑 沉迷游戏伤身 合理安排时间 享受健康生活", 154:"错误码：", 155:"\n错误信息：", 156:"\n连接服务器失败,请刷新进入游戏。", 157:"确定设置<font color=\'#FAD200\'>{0}级· {1}(原s{2})</font>为主角色吗？<br/>", 158:"确定", 159:"取消", 160:"{0}级· {1}(s{2})", 999:""};
            return;
        }// end function

        public static function getString(param1:int) : String
        {
            return map[param1];
        }// end function

        public static function getStringByParam(param1:int, ... args) : String
        {
            args = map[param1];
            return StringHelper.substitute(args, args);
        }// end function

    }
}
